<?php

abstract class PreFilter{
	
	/**
		This used in the Invoker to wrap the content in the filter chain
		@param $payload the data what we are going to wrap 
		@param $registryObject is a global object which can be used to pass data between filters 
		including all the pre and post filters
		
		@return the wraped payload				  
	*/
	public function wrap($payload,$registryObject);
	
	/**
		This used in the Registry to unwrap the wraped payload in the Invokers wrap method
		@param $payload the data what we are going to unwrap 
		@param $registryObject is a global object which can be used to pass data between filters 
		including all the pre and post filters
		
		@return the unwraped payload				  
	*/
	public function unWrap($payload,$registryObject);
}
